﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using RestSharp;

namespace WeiTalk.SinaEntities.User
{
    public class Entity
    {
        /// <summary>
        /// 用户UID
        /// </summary>
        public string ID { get;  set; }
        /// <summary>
        /// 用户UID(字符型)
        /// </summary>
        public string IDStr { get;  set; }
        /// <summary>
        /// 用户昵称
        /// </summary>
        public string ScreenName { get;  set; }
        /// <summary>
        /// 友好显示名称
        /// </summary>
        public string Name { get;  set; }
        /// <summary>
        /// 用户所在地区ID
        /// </summary>
        public string Province { get;  set; }
        /// <summary>
        /// 用户所在城市ID
        /// </summary>
        public string City { get;  set; }
        /// <summary>
        /// 用户所在地
        /// </summary>
        public string Location { get;  set; }
        /// <summary>
        /// 用户描述
        /// </summary>
        public string Description { get;  set; }
        /// <summary>
        /// 用户博客地址
        /// </summary>
        public string Url { get;  set; }
        /// <summary>
        /// 用户头像地址
        /// </summary>
        public string ProfileImageUrl { get;  set; }
        /// <summary>
        /// 用户微博主页地址
        /// </summary>
        public string ProfileUrl { get;  set; }
        /// <summary>
        /// 用户的个性化域名
        /// </summary>
        public string Domain { get;  set; }
        /// <summary>
        /// 用户的微号
        /// </summary>
        public string Weihao { get;  set; }
        /// <summary>
        /// 性别，m：男、f：女、n：未知
        /// </summary>
        public string Gender { get;  set; }
        /// <summary>
        /// 粉丝数
        /// </summary>
        public int FollowersCount { get;  set; }
        /// <summary>
        /// 关注数
        /// </summary>
        public int FriendsCount { get;  set; }
        /// <summary>
        /// 微博数
        /// </summary>
        public int StatusesCount { get;  set; }
        /// <summary>
        /// 收藏数
        /// </summary>
        public long FavouritesCount { get;  set; }

        string createdAt = string.Empty;
        /// <summary>
        /// 创建时间
        /// </summary>
        public string CreatedAt { get { return createdAt; }
            set
            {
                createdAt = Utility.ConvertUTCTimeToLocalTime(value);
            }
        }
        /// <summary>
        /// 当前登录用户是否已关注该用户
        /// </summary>
        public bool Following { get;  set; }
        /// <summary>
        /// 是否允许所有人给我发私信
        /// </summary>
        public bool AllowAllActMsg { get;  set; }
        /// <summary>
        /// 是否允许带有地理信息
        /// </summary>
        public bool GEOEnabled { get;  set; }
        /// <summary>
        /// 是否是微博认证用户，即带V用户
        /// </summary>
        public bool Verified { get;  set; }
        /// <summary>
        /// 微博认证用户的类型
        /// </summary>
        public string VerifiedType { get;  set; }
        /// <summary>
        /// 备注信息
        /// </summary>
        public string Remark { get;  set; }
        /// <summary>
        /// 用户的最近一条微博信息字段
        /// </summary>
        public Status.Entity Status { get;  set; }
        /// <summary>
        /// 是否允许所有人对我的微博进行评论
        /// </summary>
        public bool AllowAllComment { get;  set; }
        /// <summary>
        /// 用户大头像地址
        /// </summary>
        public string AvatarLarge { get;  set; }
        /// <summary>
        /// 认证原因
        /// </summary>
        public string VerifiedReason { get;  set; }
        /// <summary>
        /// 该用户是否关注当前登录用户
        /// </summary>
        public bool FollowMe { get;  set; }
        /// <summary>
        /// 用户的在线状态，0：不在线、1：在线
        /// </summary>
        public int OnlineStatus { get;  set; }
        /// <summary>
        /// 用户的互粉数
        /// </summary>
        public int BIFollowersCount { get;  set; }
        /// <summary>
        /// 用户使用语言类型
        /// </summary>
        public string Lang { get;  set; }
    }
}
